package com.example.homework;

import java.util.Scanner;

public class HomeWork01 {
    public static void main(String[] args) {
        // 需求:
        // 让用户依次录入三个整数，求出三个数中的最大值，并打印到控制台。[使用if]
        /*
        思路分析：
        1.定义一个方法接收三个整数
        2.在方法中判断三个数的最大数返回
         */
        System.out.println("请依次输入三个整数:");
        Scanner sc = new Scanner(System.in);
        int num1 = sc.nextInt();
        int num2 = sc.nextInt();
        int num3 = sc.nextInt();
        System.out.println("三个数的最大值为：" + getMax1(num1, num2, num3));

    }

    // 使用三元运算符解决
    public static int getMax1(int num1, int num2, int num3) {
        // 首先找出前两个数中的较大者
        int max = num1 > num2 ? num1 : num2;
        return max > num3 ? max : num3;
    }


    /**
     * 比较三个整数，返回最大值
     *
     * @param num1 第一个整数
     * @param num2 第二个整数
     * @param num3 第三个整数
     * @return 三个整数中的最大值
     */
    public static int getMax(int num1, int num2, int num3) {

        // 初始化max为0，这只是临时值，将会被后续的比较所更新
        int max = 0;

        // 比较num1和num2，将较大的值赋给max
        if (num1 > num2) {
            max = num1;
        } else {
            max = num2;
        }

        // 比较num3和当前的max，确保max是三个数中的最大值
        if (num3 > max) {
            max = num3;
        } else {
            // 如果num3不大于max，则当前的max已经是最大值，直接返回
            return max;
        }
        // 返回最大值
        return max;
    }
}
